/******************************************************************************
**                                                                           **
**                 Proprietary and Confidential Information                  **
**                                                                           **
**                 Copyright (c) Conexant Systems, Inc. Unpublished          **
**                                                                           **
** This source code and the algorithms implemented therein constitute        **
** confidential information and may compromise trade secrets of Conexant Systems,    **
** Inc. or its associates, and any unauthorized use thereof is prohibited.   **
**                                                                           **
******************************************************************************/

#ifndef _dc_scim_enum_api_h_
#define _dc_scim_enum_api_h_

/******************************************************************************
*  FILE FORMAT:
*      1. INCLUDES 
*      2. ENUMERATIONS 
*      3. DEFINES
*      4. STRUCTURES
*      5. GLOBALS
*      6. PRIVATE FUNCTION PROTOTYPES
*      7. FUNCTIONS
******************************************************************************/

/******************************************************************************
*  1. INCLUDES
******************************************************************************/

/******************************************************************************
*  2. ENUMERATIONS
******************************************************************************/
typedef enum {
  DC_SCIM_STATUS_IDLE = 0,
  DC_SCIM_STATUS_BUSY
} DC_SCIM_STATUS_t;

typedef enum {
  DC_SCIM_EVENT_PAGE_READY = 0,
  DC_SCIM_EVENT_PAGE_COMPLETE,
  DC_SCIM_EVENT_PAGE_CANCEL_COMPLETE,
  DC_SCIM_EVENT_PAGE_ERROR,

  DC_SCIM_EVENT_MAX_DMB_LIMIT,
  DC_SCIM_EVENT_MAX_DMB_OK,
  DC_SCIM_EVENT_SYS_DMB_LIMIT,
  DC_SCIM_EVENT_SYS_DMB_OK,

  DC_SCIM_EVENT_LAST
} DC_SCIM_EVENT_t;

typedef enum {
  DC_SCIM_ERROR_NONE = 0,
  DC_SCIM_ERROR_MEMORY,
  DC_SCIM_ERROR_UNDEFINED,

  DC_SCIM_ERROR_LAST
} DC_SCIM_ERROR_t;

typedef enum {
	DC_SCIM_OUTPUT_CONTAINER_TYPE_DMBIMG=0,
  DC_SCIM_OUTPUT_CONTAINER_TYPE_IMGBUF,

	DC_SCIM_OUTPUT_CONTAINER_TYPE_LAST
} DC_SCIM_OUTPUT_CONTAINER_TYPE_t;

typedef enum {
	DC_SCIM_HALFTONE_MODE_THRESHOLD=0,
	DC_SCIM_HALFTONE_MODE_ERROR_DIFFUSION,
	DC_SCIM_HALFTONE_MODE_DITHER,
	DC_SCIM_HALFTONE_MODE_LAST
} DC_SCIM_HALFTONE_MODE_t;

typedef enum {
  DC_SCIM_JPEG_SAMPLE_MODE_411=0,
  DC_SCIM_JPEG_SAMPLE_MODE_111,
  DC_SCIM_JPEG_SAMPLE_MODE_211,
  DC_SCIM_JPEG_SAMPLE_MODE_211V,
  DC_SCIM_JPEG_SAMPLE_MODE_K,

  DC_SCIM_JPEG_SAMPLE_MODE_LAST
} DC_SCIM_JPEG_SAMPLE_MODE_t;

typedef enum {
  DC_SCIM_JPEG_QUANT_LEVEL_MEDIUM=0,
  DC_SCIM_JPEG_QUANT_LEVEL_LOWER,
  DC_SCIM_JPEG_QUANT_LEVEL_LOW,
  DC_SCIM_JPEG_QUANT_LEVEL_HIGH,
  DC_SCIM_JPEG_QUANT_LEVEL_HIGHER,
  DC_SCIM_JPEG_QUANT_LEVEL_LOWEST,

	DC_SCIM_JPEG_QUANT_LEVEL_LAST

} DC_SCIM_JPEG_QUANT_LEVEL_t;

typedef enum {
  SCIM_CONTRAST_NORMAL =0,
  SCIM_CONTRAST_DECREASE,
  SCIM_CONTRAST_INCREASE,
  SCIM_CONTRAST_HIGH_DECREASE,
  SCIM_CONTRAST_HIGH_INCREASE,
  SCIM_CONTRAST_HIGHER_INCREASE,
  SCIM_CONTRAST_HIGHEST_INCREASE
} SCIM_CONTRAST_t;

typedef enum {
  SCIM_ADJUST_CONTROL_NONE=0,
  SCIM_ADJUST_CONTROL_ENABLE,
  SCIM_ADJUST_CONTROL_ENABLE_WITH_TOP,
  SCIM_ADJUST_CONTROL_ENABLE_WITH_ALL,
  SCIM_ADJUST_CONTROL_LAST,
} SCIM_ADJUST_CONTROL_t;

typedef UINT32 SCIM_FIR_OPTIONS_t;

#define SCIM_FIR_OPTIONS_NONE           (0)
#define SCIM_FIR_OPTIONS_RGB2YCC        (1<<0)    // or YRB2YCC
#define SCIM_FIR_OPTIONS_RGBphotometric (1<<1)
#define SCIM_FIR_OPTIONS_YCCphotometric (1<<2)

/******************************************************************************
*  3. DEFINES
******************************************************************************/


/******************************************************************************
*  4. STRUCTURES
******************************************************************************/

/******************************************************************************
*  5. GLOBALS
******************************************************************************/

/******************************************************************************
*  6. FUNCTION PROTOTYPES
******************************************************************************/

#endif


